アニメーション
Expression Editor を開かずに、パラメータのエクスプレッションを追加したり変更したりします。
実行中にExpression Editorを開きたい場合は、代わりにAddExprコマンドを使用します。
エクスプレッションは、オブジェクト、パラメータ名、算術演算子、および関数や定数を表すトークンを含む文字列です。 たとえば、オブジェクト
A の Y 軸回転をオブジェクト B の X 軸方向の移動に拘束するには、文字列 B.kine.local.posx
を含むエクスプレッションを A.kine.local.roty に設定します。
エクスプレッションは、移動、回転、スケーリング、マテリアル、テクスチャなどアニメーション化が可能な任意のパラメータを制御するために使用する、算術式です。
パラメータ間には、単純な "A = B"
のような関係から、定義済みの変数、標準数学関数、乱数ジェネレータなどを使用した非常に複雑な関係まで、必要に応じたほぼすべての関係を作成することができます。
エクスプレッションの詳細については、「アニメーション」を参照してください。
注: このコマンドは、出力引数を使用します。 C#
および一部のスクリプト言語(JScript、PerlScript、Python
など)は、リファレンスによって渡される引数をサポートしていません。このため、状況に応じた適切な回避策を実行する必要があります。
スクリプト言語の場合、このコマンドは出力引数を取得するために使用できる ISIVTCollection を戻します。
C# の場合は、XSIApplication.ExecuteCommand
メソッドを使用してこのコマンドを呼び出すことができます。 ExecuteCommand は、出力引数を C# の
System.Object (出力引数の配列を含む)にパック化します(詳細については、「C#
からのコマンドの呼び出し」を参照)。
SetExpr( [InputObj], [ExprStr], [ExprObj] ); |
パラメータ | タイプ | 詳細 |
---|---|---|
InputObj | 文字列 | パラメータのリスト (例:
cone*/kine.local.pos)。
デフォルト値:現在選択され、マーキングされているパラメータ |
ExprStr | 文字列 | エクスプレッション
デフォルト値:現在のパラメータ値 (例: a.kine.global.posx = 3.5) |
ExprObj | XSICollection | エクスプレッション オブジェクトのリストを戻します。 |
' ' This example sets an expression on a parameter using the SetExpr ' command and then uses the EditExpr command to open the Expression ' Editor to inspect the new expression. ' ' Create the object on which to set the expression set oDonut = CreatePrim( "Torus", "NurbsSurface" ) ' Make sure the last frame will be set to 100 SetValue "PlayControl.Out", 100 ' Set a key frame at frame 1, with XPos = -30 SaveKey oDonut & ".kine.local.posx", 1, -30 ' Set another key frame at frame 100, with XPos = 30 SaveKey oDonut & ".kine.local.posx", 100, 30 ' Animate the YPos parameter with an expression SetExpr oDonut & ".kine.local.posy", _ "5*sin(" & oDonut & ".kine.local.posx * 15)" ' Now display the Expression Editor to see the results EditExpr oDonut & ".kine.local.posy" |